package rpc

import "encoding/gob"

// RegisterTypes 注册所有需要通过RPC传输的类型
func RegisterTypes() {
	// 注册基础类型
	gob.Register(map[string]interface{}{})
	gob.Register([]interface{}{})

	// 注册请求和响应结构体
	gob.Register(DBRequest{})
	gob.Register(CoordinatorRequest{})
	gob.Register(CoordinatorReply{})

	// 注册数据表结构体（指针形式）
	gob.Register(&User{})
	gob.Register(&Video{})
	gob.Register(&Follow{})
	gob.Register(&LikeRecord{})
	gob.Register(&Favorite{})
	gob.Register(&Comment{})
	gob.Register(&Tag{})
	gob.Register(&VideoTag{})
	gob.Register(&ActionLog{})
}
